﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MIP_Projekt2011_bjarke
{
    public class Book
    {
        public string Titel;
        public string Forfatter;
        public DateTime Udlånsdato;
        public bool ErUdlånt;
        
        // Afleveringsdato er suppleret for at kunne beregne hvor lang tid der går fra udlån til aflevering af bøger.
        // Den ovennævnte beregning laves i Library metoden: Afleveringsmetode.
        public DateTime Afleveringsdato;
        public DateTime Afleveringsdeadline;

        // bogID er suppleret for at have et ID på hver enkelt bog som oprettes.
        public int bogID { get; private set; }

        private static int ID = 0;

        public Book() { }

        public Book(string titel, string forfatter, DateTime udlånsdato, bool erudlånt)
        {
            this.bogID = ID;
            this.Titel = titel;
            this.Forfatter = forfatter;
            this.Udlånsdato = udlånsdato;
            this.ErUdlånt = erudlånt;
            this.Afleveringsdeadline = this.Udlånsdato.AddDays(28);
            ID++; // ID tælles op for hvert Book objekt
        }

        public Book(string titel, string forfatter, DateTime udlånsdato, bool erudlånt, DateTime afleveringsdato)
        {
            this.bogID = ID;
            ID++; // ID tælles op for hvert Book objekt

            this.Titel = titel;
            this.Forfatter = forfatter;
            this.Udlånsdato = udlånsdato;
            this.ErUdlånt = erudlånt;
            this.Afleveringsdato = afleveringsdato;
            this.Afleveringsdeadline = this.Udlånsdato.AddDays(28);
        }

        #region ToString override er lavet til formatering af alle liste udskrifterne
        public override string ToString()
        {
            string erBogHjemme;

            if (this.ErUdlånt == false)
            {
                erBogHjemme = "Bogen er hjemme";
            }
            else
            {
                erBogHjemme = "Bogen er udlånt";
            }

            return "ID: \t\t" + this.bogID + "\n" + "Titel:\t\t" + this.Titel + "\n" +
                "Forfatter:\t" + this.Forfatter + "\n" +
                "Sidst udlånt:\t" + this.Udlånsdato.Day + "-" + this.Udlånsdato.Month + "-"  + this.Udlånsdato.Year + "\n" +
                "Status:\t\t" + erBogHjemme;
                //+ "\n\t" + "Afleveringsdato: " + this.Afleveringsdeadline.Month + "-" + this.Afleveringsdeadline.Day + "-" + this.Afleveringsdeadline.Year ;
        }
        #endregion
    }
}
